package pack0707;

import java.io.File;

//演示File类的常用方法
public class FileDemo {
    public static void main(String[] args) throws Exception {
        //文件和文件夹以后缀名来区分
        //1.创建一个目录File对象
        File dir = new File("d:" + File.separator + "a" + File.separator + "b" + File.separator + "c");
        //2.既可以创建单级目录,也可以创建多级目录(文件夹)
        dir.mkdirs();

        File file2 = new File("a");
        file2.mkdirs();
        File file1 = new File("C:/", "file.txt");
        file1.mkdirs();
        //3.创建文件
        File file = new File("a.txt");
        file.createNewFile();

        //4.判断目录后者文件是否存在
        System.out.println(dir.exists());
        System.out.println(file.exists());

        //5.判断一个File对象是文件还是目录
        System.out.println(file2.isFile());
        System.out.println(dir.isDirectory());

        //6.获取File对象的相对路径
        System.out.println(file.getPath());

        //7.获取File对象的绝对路径
        System.out.println(file.getAbsolutePath());

        //8.获取file对象的名字
        System.out.println(file.getName());
        System.out.println(dir.getName());

        //9.获取file对象的父路径
        System.out.println(dir.getParent());

        //10.删除file对象
        file.deleteOnExit();
        file1.deleteOnExit();
        file2.deleteOnExit();
        dir.deleteOnExit();

        //11.列举文件夹下的所有file对象
        File file3 = new File("a");
        file3.mkdirs();
        System.out.println("------------------");
        File ff = new File("a");
        File[] fs = ff.listFiles();
        System.out.println("-----------------");
        for (File f : fs) {
            System.out.println(f.getName() + "::" + f.getAbsolutePath());
        }
        System.out.println("--------------------");

    }
}
